﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace Eniux.Web.Framework.core
{
    /// <summary>
    /// 指定是最小化、最大化、还原窗口还是全屏窗口
    /// </summary>
    public enum WindowState
    {
        /// <summary>
        /// 还原窗口
        /// </summary>
        Normal = 0,
        /// <summary>
        /// 最小化窗口
        /// </summary> 
        Minimized = 1,
        /// <summary>
        /// 最大化窗口
        /// </summary>  
        Maximized = 2,
        /// <summary>
        /// 全屏
        /// </summary>
        FullScreenSize
    }

    /// <summary>
    /// 指定第一次打开 Window 时所要显示到的位置
    /// </summary>
    public enum WindowStartupLocation
    {
        /// <summary>
        /// 启动位置可从代码中设置，或者使用默认的 Windows 位置
        /// </summary>
        Manual = 0,
        /// <summary>
        /// 启动位置位于包含鼠标光标的屏幕的中央
        /// </summary>
        CenterScreen = 1,
        /// <summary>
        ///  启动位置位于包含它的(父)window中央
        /// </summary>
        CenterOwner = 2,
    }

    /// <summary>
    /// 指定是否可以调整窗口大小，并在可调整大小的情况下指定如何调整窗口大小
    /// </summary>  
    public enum ResizeMode
    {
        /// <summary>
        /// 无法调整窗口的大小。标题栏中不显示“最小化”和“最大化”按钮
        /// </summary>  
        NoResize = 0,
        /// <summary>
        /// 只能最小化和还原窗口。同时显示“最小化”和“最大化”按钮，但只有“最小化”按钮处于启用状态
        /// </summary>  
        CanMinimize = 1,
        /// <summary>
        ///可以调整窗口的大小。同时显示“最小化”和“最大化”按钮，并且两个按钮均处于启用状态
        /// </summary>  
        CanResize = 2,
        /// <summary>
        /// 可以调整窗口的大小。同时显示“最小化”和“最大化”按钮，并且两个按钮均处于启用状态。窗口的右下角显示一个大小调整手柄
        /// </summary>  
        CanResizeWithGrip = 3,
    }
}
